table of contents
- НАЗВА
- КОРОТКИЙ ОПИС
- ОПИС
- ЗБИРАННЯ ФАЙЛА KICKSTART
- ЗБИРАННЯ ISO АБО ОБРАЗУ ДИСКА ІЗ ПОРТАТИВНОЮ СИСТЕМОЮ
- ЗБИРАННЯ ВАРІАНТА FEDORA ЗА ДОПОМОГОЮ KOJI
- ЗБИРАННЯ ПРИДАТНОГО ДО ЗАВАНТАЖЕННЯ НОСІЯ USB
- ЗБИРАННЯ ОБРАЗУ ДЛЯ ЗАВАНТАЖЕННЯ PXE
- 32- ЧИ 64-БІТОВА VIRT-P2V?
- ТЕСТУВАННЯ VIRT-P2V ЗА ДОПОМОГОЮ QEMU
- ДОДАВАННЯ ДОДАТКОВИХ ПАКУНКІВ
- ДОДАВАННЯ ПРОФІЛЮ SSH
- ПАРАМЕТРИ
- ФАЙЛИ
- ЗМІННІ СЕРЕДОВИЩА
- ТАКОЖ ПЕРЕГЛЯНЬТЕ
- АВТОРИ
- АВТОРСЬКІ ПРАВА
- LICENSE
- BUGS
virt-p2v-make-kickstart(1) | Virtualization Support | virt-p2v-make-kickstart(1) |
НАЗВА¶
virt-p2v-make-kickstart — програма для збирання kickstart virt-p2v
КОРОТКИЙ ОПИС¶
virt-p2v-make-kickstart [-o p2v.ks] [--proxy=http://...] сховище [сховище...]
ОПИС¶
virt-p2v(1) перетворює фізичну машину для запуску віртуалізованою у KVM, під керуванням libvirt, OpenStack, oVirt, Red Hat Enterprise Virtualisation (RHEV) або одним із інших призначень, підтримку яких передбачено у virt-v2v(1).
Kickstart — формат, який використовується у похідних від Red Hat дистрибутивах (зокрема Fedora, Red Hat Enterprise Linux, CentOS, Scientific Linux тощо) для опису процесу створення компакт-дисків із портативною системою, встановлення дистрибутива, створення «варіантів» тощо. Дані у цьому форматі зберігаються у файлі kickstart.
virt-p2v-make-kickstart збирає файл kickstart, яким можна скористатися для збирання придатного до завантаження ISO P2V, образу портативної системи для компакт-диска, флешки USB або образу PXE. Ця програма лише створює файл kickstart, але на цій сторінці підручника описано деякі зі способів використання файла kickstart.
ЗБИРАННЯ ФАЙЛА KICKSTART¶
Користуватися virt-p2v-make-kickstart дуже просто:
virt-p2v-make-kickstart fedora
збере файл kickstart для Fedora. Файл kickstart називатиметься p2v.ks і зберігатиметься у поточному каталозі.
Параметрі є списком з одного або декількох сховищ. Деякі із наявних вбудованих сховищ: "fedora", "rawhide", "koji" або "rhel-ВЕРСІЯ" (наприклад "rhel-7.1"). Ви також можете змінити адресу як параметр для вказування на сховище. Приклад:
virt-p2v-make-kickstart https://dl.fedoraproject.org/pub/fedora/linux/releases/21/Everything/x86_64/os/
Для керування назвою файла-результату скористайтеся параметром -o. Щоб наказати kickstart скористатися проксі-сервером або вебкешем для отримання файлів, скористайтеся параметром --proxy.
ЗБИРАННЯ ISO АБО ОБРАЗУ ДИСКА ІЗ ПОРТАТИВНОЮ СИСТЕМОЮ¶
Щойно у вас буде файл kickstart, ви можете скористатися livecd-creator(8) для створення образу компакт-диска із портативною системою:
sudo livecd-creator p2v.ks
Перш ніж віддавати команду, зауважте, що вам слід, ймовірно, запустити "livecd-creator" в одноразовій віртуальній машині з таких причин:
- На час роботи із програмою вам слід вимкнути SELinux.
- Цю програму слід запускати від імені користувача root. Також її виконання іноді супроводжується помилками із доволі прикрими наслідками.
- Ви можете створювати образи компакт-дисків портативної системи лише з тим самим дистрибутивом, що і в основній системі. Крос-компіляція завершуватиметься дивними повідомленнями про помилки (див., наприклад, RHBZ#1092327).
ЗБИРАННЯ ВАРІАНТА FEDORA ЗА ДОПОМОГОЮ KOJI¶
Це потребує прав доступу "spin-livecd" для Koji, які зазвичай не надаються, навіть для пакувальників Fedora. Втім, припускаючи, що у вас є відповідні права доступу (або, наприклад, ваш власний екземпляр Koji), ви можете зробити так:
koji spin-livecd [--scratch] virt-p2v 1.XX.YY rawhide x86_64 p2v.ks
- Додайте параметр "--scratch" для створення тестової збірки (рекомендовано для тестування).
- "1.XX.YY" має збігатися із версією libguestfs
- Замість "rawhide" ви можете скористатися будь-якою іншою ціллю Koji.
ЗБИРАННЯ ПРИДАТНОГО ДО ЗАВАНТАЖЕННЯ НОСІЯ USB¶
Скористайтеся програмою livecd-iso-to-disk(8) для перетворення створеного за наведеним вище рецептом образу ISO на запис на носії USB:
sudo livecd-iso-to-disk livecd-p2v.iso /dev/sdX
ЗБИРАННЯ ОБРАЗУ ДЛЯ ЗАВАНТАЖЕННЯ PXE¶
Скористайтеся програмою "livecd-iso-to-pxeboot" для перетворення створеного вище образу ISO у образ для завантаження PXE.
sudo livecd-iso-to-pxeboot livecd-p2v.iso
Ця команда створює підкаталог "tftpboot" у поточному каталозі, який міститиме файли, потрібні, щоб PXE завантажила virt-p2v:
$ ls -1R tftpboot/ tftpboot/: initrd0.img pxelinux.0 pxelinux.cfg/ vmlinuz0 tftpboot/pxelinux.cfg: default
32- ЧИ 64-БІТОВА VIRT-P2V?¶
Virt-p2v може перетворювати будь-які 32- або 64-бітові гостьові системи, незалежно від того, чи є сама virt-p2v зібраною як 32- або 64-бітовою програмою. Єдиним обмеженням є те, що 64-бітову версію virt-p2v не може бути запущено на 32-бітовому обладнанні.
Застаріла версія virt-p2v 0.9 завжди збиралася як 32-бітовий (i686) образ ISO. Це означало, що компакт-диск із такою системою могло бути завантажено на будь-якому 32- або 64-бітовому обладнанні архітектури i686 або x86-64, і вона могла перетворювати будь-які гостьові системи. Застарілий образ ISO virt-p2v, що постачався Red Hat, було засновано на Red Hat Enterprise Linux (RHEL) 6.
Оскільки у RHEL 7 було припинено підтримку 32-бітових машин, поточну версію virt-p2v на RHEL може бути зібрано лише у 64-бітовій версії. Цю систему не може бути запущено на застарілому обладнанні 32-бітової архітектури.
Образи ISO virt-p2v для Fedora типово збираються для 32-бітової архітектури, отже, подібно до застарілої версії на основі RHEL 6, virt-p2v 0.9, їх можна завантажувати на будь-якому обладнанні.
ТЕСТУВАННЯ VIRT-P2V ЗА ДОПОМОГОЮ QEMU¶
ТЕСТУВАННЯ ISO P2V ЗА ДОПОМОГОЮ QEMU¶
Ви можете скористатися qemu для тестового завантаження образу ISO P2V:
qemu-kvm -m 1024 -hda /tmp/guest.img -cdrom /tmp/livecd-p2v.iso -boot d
Зауважте, що "-hda" є (віртуальною) системою, яку ви хочете перетворити (з тестовою метою). Нею може бути гостьова система будь-якого типу, підтримуваного у virt-v2v(1), зокрема Windows або Red Hat Enterprise Linux.
ТЕСТУВАННЯ ПІДТРИМКИ PXE ЗА ДОПОМОГОЮ QEMU¶
- Розпакуйте каталог tftpboot до /tmp (щоб її було показано як /tmp/tftpboot).
- Скопіюйте pxelinux.0 і ldlinux.c32 з syslinux (зазвичай з /usr/share/syslinux) до /tmp/tftpboot.
- Скоригувати рядок "APPEND" у /tmp/tftpboot/pxelinux.cfg/default, якщо потрібно. Див. "НАЛАШТУВАННЯ КОМАНДНОГО РЯДКА ЯДРА" in virt-p2v(1).
- Запустіть
qemu ось так,
щоб
програма
працювала
як сервер TFTP
і BOOTP,
емулюючи
завантаження
з мережі:
qemu-kvm \ -m 4096 -hda /tmp/guest.img \ -boot n \ -netdev user,id=unet,tftp=/tmp/tftpboot,bootfile=/pxelinux.0 \ -device virtio-net-pci,netdev=unet \ -serial stdio
Зауважте, що це потребує значно більше пам'яті, оскільки образ PXE завантажується до пам'яті. Крім того, через те, що сервер TFTP qemu є дуже повільним, а образ PXE virt-p2v є дуже великим, образ може, як здається» «зависати» після запуску pxelinux.
ДОДАВАННЯ ДОДАТКОВИХ ПАКУНКІВ¶
Встановити нові пакунки можна за допомогою параметра --install. Встановлення нових пакунків може бути корисним для створення повнофункціонального диска virt-p2v із додатковими інструментами для діагностики та усування вад. Як аргумент параметра слід вказати список пакунків, відокремлених комами. Приклад:
virt-p2v-make-kickstart [...] --install tcpdump,traceroute
ДОДАВАННЯ ПРОФІЛЮ SSH¶
Ви можете вставити файл профілю SSH (закритий ключ) до kickstart, а отже до ISO, за допомогою параметр --inject-ssh-identity. Зауважте, що ви не можете вставити ключ після збирання образу ISO.
Спочатку створіть пару ключів. Пароль до пари ключів має бути порожнім:
ssh-keygen -t rsa -N '' -f id_rsa
Ця команда створить закритий ключ ("id_rsa") і відкритий ключ ("id_rsa.pub"). Відкритий ключ слід дописати до файла "authorized_keys" на сервері перетворення virt-v2v (зазвичай, до файла "/root/.ssh/authorized_keys").
Закритий ключ має бути додано до файла kickstart, а потім відкинуто:
virt-p2v-make-kickstart [...] --inject-ssh-identity id_rsa rm id_rsa
Образ ISO далі може бути зібрано на основі kickstart у звичний спосіб (див. вище), і він міститиме вбудований профіль SSH (/var/tmp/id_rsa).
При завантаженні virt-p2v вкажіть адресу вставленого файла ось так:
│ Користувач: [root____________________________] │ │ │ │ Пароль: [ <не заповнюйте> ] │ │ │ │ Адреса профілю SSH: [file:///var/tmp/id_rsa_______] │
або, якщо використовується командний рядок ядра, додайте:
p2v.identity=file:///var/tmp/id_rsa
Докладніший опис наведено у розділі "ПРОФІЛІ SSH" in virt-p2v(1).
ПАРАМЕТРИ¶
- --help
- Показати довідкове повідомлення.
- --inject-ssh-identity id_rsa
- Додати файл профілю SSH (закритий ключ) до kickstart. Див. "ДОДАВАННЯ ПРОФІЛЮ SSH" вище.
- --install пакунок,пакунок,...
- Додати додаткові пакунки до розділу %packages kickstart. Див. "ДОДАВАННЯ ДОДАТКОВИХ ПАКУНКІВ" вище.
- -o ВИВЕДЕННЯ
- --output ВИВЕДЕННЯ
- Записати kickstart до "ВИВЕДЕННЯ". Якщо не вказано, буде типово використано p2v.ks у поточному каталозі.
- --proxy АДРЕСА
- Наказати kickstart використати для отримання даних проксі-сервер або вебкеш.
- -v
- --verbose
- Увімкнути режим докладних повідомлень. Скористайтеся цим параметром, якщо вам потрібно діагностувати джерело проблеми зі скриптом або створити докладний звіт щодо вади у бібліотеці.
- -V
- --version
- Показати дані щодо версії і завершити роботу.
ФАЙЛИ¶
- $libdir/virt-p2v/virt-p2v.xz
- Виконуваний
файл virt-p2v(1),
який
копіюється
до файла kickstart.
Розташування виконуваного файла можна змінити за допомогою встановлення відповідного значення змінної середовища "VIRT_P2V_DATA_DIR".
- $datadir/virt-p2v/issue
- $datadir/virt-p2v/launch-virt-p2v.in
- $datadir/virt-p2v/p2v.ks.in
- $datadir/virt-p2v/p2v.service
- Різноманітні
файли
даних, які
використовуються
для
створення
kickstart.
Розташування цих файлів можна змінити за допомогою встановлення відповідного значення змінної середовища "VIRT_P2V_DATA_DIR".
ЗМІННІ СЕРЕДОВИЩА¶
- "VIRT_P2V_DATA_DIR"
- Каталог, де virt-p2v-make-kickstart шукатиме файли даних і виконуваний файл virt-p2v (див. "ФАЙЛИ" вище). Якщо не встановлено, буде використано вказане під час компіляції місце.
ТАКОЖ ПЕРЕГЛЯНЬТЕ¶
virt-p2v(1), virt-p2v-make-disk(1), virt-v2v(1), livecd-creator(8), livecd-iso-to-disk(8), http://libguestfs.org/.
АВТОРИ¶
Richard W.M. Jones http://people.redhat.com/~rjones/
АВТОРСЬКІ ПРАВА¶
Copyright (C) 2009-2019 Red Hat Inc.
LICENSE¶
BUGS¶
To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
When reporting a bug, please supply:
- The version of libguestfs.
- Where you got libguestfs (eg. which Linux distro, compiled from source, etc)
- Describe the bug accurately and give a way to reproduce it.
- Run libguestfs-test-tool(1) and paste the complete, unedited output into the bug report.
2019-02-07 | libguestfs-1.40.2 |